home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Disc to the Future 2
/
Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin
/
MAC
/
THINKC
/
4_0
/
DSAT_ANA
/
DSAT_OUT.C
< prev
next >
Wrap
Text File
|
1988-11-02
|
1KB
|
75 lines
/*
System error alert table analyzer
"DSAT Output.c"
*/
static int Ref; /* Output file reference number */
static int ResRef; /* Resource file reference number */
/* ----- Write C string to file ---------------------------------------- */
void Output(s)
register char *s;
{
register char *p;
long count;
p = s;
while(*p++)
;
count = p - s;
FSWrite(Ref, &count, s);
}
/* ----- Write resource to output file --------------------------------- */
void OutputResource(p, size, type, id, name)
char *p;
register long size;
long type;
int id;
char *name;
{
register int res;
register char **h;
if (h = (char **)NewHandle(size)) {
BlockMove(p, *h, size);
res = CurResFile();
UseResFile(ResRef);
AddResource(h, type, id, name);
WriteResource(h);
ReleaseResource(h); /*DisposHandle(h);*/
UseResFile(res);
}
}
/* ----- Open text file for output ------------------------------------- */
int OutputOpen(name, volume)
char *name;
int volume;
{
register int err;
register int res;
FSDelete(name, volume);
err = Create(name, volume, 'PEDT', 'TEXT') ||
FSOpen(name, volume, &Ref);
if (!err) {
res = CurResFile();
CreateResFile(name);
ResRef = OpenResFile(name);
UseResFile(res);
}
return err;
}
/* ----- Close output file --------------------------------------------- */
void OutputClose()
{
FSClose(Ref);
CloseResFile(ResRef);
}